Add a test case for the gpx writer trk/extensions with chains.
authortsteven4 <tsteven4@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Sat, 9 Mar 2013 21:59:21 +0000 (21:59 +0000)
committertsteven4 <tsteven4@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Sat, 9 Mar 2013 21:59:21 +0000 (21:59 +0000)
git-svn-id: http://gpsbabel.googlecode.com/svn/trunk@4343 f51c46e8-681c-474f-0cfe-069cfd0219fb

gpsbabel/gpx.cc
gpsbabel/reference/basecamp.gpx [new file with mode: 0644]
gpsbabel/reference/basecamp~gpx.gpx [new file with mode: 0644]
gpsbabel/testo.d/gpx.test

index 093fa68e05875d83d2add34d633110a3826067ce..19d247877fece1777752993dcbb48079744e3522 100644 (file)
@@ -1792,8 +1792,6 @@ gpx_track_hdr(const route_head* rte)
     writer.writeTextElement("number", QString::number(rte->rte_num));
   }
 
-  // FIXME: Note that this chain nonsense is not executed in our
-  // test suite as of 2013-03-09.
   if (gpx_wversion_num > 10) {
     fs_gpx = (fs_xml*)fs_chain_find(rte->fs, FS_GPX);
     if (fs_gpx) {
diff --git a/gpsbabel/reference/basecamp.gpx b/gpsbabel/reference/basecamp.gpx
new file mode 100644 (file)
index 0000000..13d74a3
--- /dev/null
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="utf-8"?><gpx creator="Garmin Desktop App" version="1.1" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wptx1="http://www.garmin.com/xmlschemas/WaypointExtension/v1" xmlns:gpxtrx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v1" xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:trp="http://www.garmin.com/xmlschemas/TripExtensions/v1" xmlns:adv="http://www.garmin.com/xmlschemas/AdventuresExtensions/v1" xmlns:prs="http://www.garmin.com/xmlschemas/PressureExtension/v1">\r
+\r
+  <metadata>\r
+    <link href="http://www.garmin.com">\r
+      <text>Garmin International</text>\r
+    </link>\r
+    <time>2013-03-09T20:47:02Z</time>\r
+    <bounds maxlat="40.00396728515625" maxlon="-105.46585036441684" minlat="39.97386971488595" minlon="-105.54074392654002" />\r
+  </metadata>\r
+\r
+  <wpt lat="39.97386971488595" lon="-105.46585036441684">\r
+    <time>2013-03-09T20:45:12Z</time>\r
+    <name>Hwy 119</name>\r
+    <sym>Flag, Blue</sym>\r
+    <type>user</type>\r
+    <extensions>\r
+      <gpxx:WaypointExtension>\r
+        <gpxx:DisplayMode>SymbolAndName</gpxx:DisplayMode>\r
+        <gpxx:Categories>\r
+          <gpxx:Category>Unlisted Data</gpxx:Category>\r
+        </gpxx:Categories>\r
+      </gpxx:WaypointExtension>\r
+    </extensions>\r
+  </wpt>\r
+\r
+  <wpt lat="40.00396728515625" lon="-105.49896240234375">\r
+    <time>2013-03-09T20:45:02Z</time>\r
+    <name>Hwy 72</name>\r
+    <sym>Flag, Blue</sym>\r
+    <type>user</type>\r
+    <extensions>\r
+      <gpxx:WaypointExtension>\r
+        <gpxx:DisplayMode>SymbolAndName</gpxx:DisplayMode>\r
+        <gpxx:Categories>\r
+          <gpxx:Category>Unlisted Data</gpxx:Category>\r
+        </gpxx:Categories>\r
+      </gpxx:WaypointExtension>\r
+    </extensions>\r
+  </wpt>\r
+\r
+  <rte>\r
+    <name>Hwy 119 to Hwy 72</name>\r
+    <extensions>\r
+      <gpxx:RouteExtension>\r
+        <gpxx:IsAutoNamed>true</gpxx:IsAutoNamed>\r
+        <gpxx:DisplayColor>Magenta</gpxx:DisplayColor>\r
+      </gpxx:RouteExtension>\r
+    </extensions>\r
+    <rtept lat="39.97386971488595" lon="-105.46585036441684">\r
+      <time>2013-03-09T20:45:12Z</time>\r
+      <name>Hwy 119</name>\r
+      <sym>Flag, Blue</sym>\r
+      <extensions>\r
+        <trp:ViaPoint>\r
+          <trp:CalculationMode>FasterTime</trp:CalculationMode>\r
+          <trp:ElevationMode>Standard</trp:ElevationMode>\r
+        </trp:ViaPoint>\r
+        <gpxx:RoutePointExtension>\r
+          <gpxx:Subclass>000000000000FFFFFFFFFFFFFFFFFFFFFFFF</gpxx:Subclass>\r
+        </gpxx:RoutePointExtension>\r
+      </extensions>\r
+    </rtept>\r
+    <rtept lat="40.00396728515625" lon="-105.49896240234375">\r
+      <time>2013-03-09T20:45:02Z</time>\r
+      <name>Hwy 72</name>\r
+      <sym>Flag, Blue</sym>\r
+      <extensions>\r
+        <trp:ViaPoint>\r
+          <trp:CalculationMode>FasterTime</trp:CalculationMode>\r
+          <trp:ElevationMode>Standard</trp:ElevationMode>\r
+        </trp:ViaPoint>\r
+        <gpxx:RoutePointExtension>\r
+          <gpxx:Subclass>000000000000FFFFFFFFFFFFFFFFFFFFFFFF</gpxx:Subclass>\r
+        </gpxx:RoutePointExtension>\r
+      </extensions>\r
+    </rtept>\r
+  </rte>\r
+\r
+  <trk>\r
+    <name>Hwy 119 to Hwy 72</name>\r
+    <extensions>\r
+      <gpxx:TrackExtension>\r
+        <gpxx:DisplayColor>DarkGray</gpxx:DisplayColor>\r
+      </gpxx:TrackExtension>\r
+    </extensions>\r
+    <trkseg>\r
+      <trkpt lat="39.97386971488595" lon="-105.46585036441684" />\r
+      <trkpt lat="40.00396728515625" lon="-105.49896240234375" />\r
+    </trkseg>\r
+  </trk>\r
+\r
+</gpx>\r
diff --git a/gpsbabel/reference/basecamp~gpx.gpx b/gpsbabel/reference/basecamp~gpx.gpx
new file mode 100644 (file)
index 0000000..605dd8d
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gpx 
+  version="1.1" 
+  creator="GPSBabel - http://www.gpsbabel.org" 
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+  xmlns="http://www.topografix.com/GPX/1/1" 
+  xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
+  <metadata>
+    <time>1970-01-01T00:00:00Z</time>
+    <bounds minlat="39.973869715" minlon="-105.498962402" maxlat="40.003967285" maxlon="-105.465850364"/>
+  </metadata>
+  <wpt lat="39.973869715" lon="-105.465850364">
+    <time>2013-03-09T20:45:12Z</time>
+    <name>Hwy 119</name>
+    <cmt>Hwy 119</cmt>
+    <desc>Hwy 119</desc>
+    <sym>Flag, Blue</sym>
+    <extensions>
+      <gpxx:WaypointExtension xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensions/v3/GpxExtensionsv3.xsd">
+        <gpxx:DisplayMode>SymbolAndName</gpxx:DisplayMode>
+      </gpxx:WaypointExtension>
+    </extensions>
+  </wpt>
+  <wpt lat="40.003967285" lon="-105.498962402">
+    <time>2013-03-09T20:45:02Z</time>
+    <name>Hwy 72</name>
+    <cmt>Hwy 72</cmt>
+    <desc>Hwy 72</desc>
+    <sym>Flag, Blue</sym>
+    <extensions>
+      <gpxx:WaypointExtension xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensions/v3/GpxExtensionsv3.xsd">
+        <gpxx:DisplayMode>SymbolAndName</gpxx:DisplayMode>
+      </gpxx:WaypointExtension>
+    </extensions>
+  </wpt>
+  <rte>
+    <name>Hwy 119 to Hwy 72</name>
+    <extensions>
+      <gpxx:RouteExtension>
+        <gpxx:IsAutoNamed>true</gpxx:IsAutoNamed>
+        <gpxx:DisplayColor>Magenta</gpxx:DisplayColor>
+      </gpxx:RouteExtension>
+    </extensions>
+    <rtept lat="39.973869715" lon="-105.465850364">
+      <time>2013-03-09T20:45:12Z</time>
+      <name>Hwy 119</name>
+      <sym>Flag, Blue</sym>
+      <extensions>
+        <trp:ViaPoint>
+          <trp:CalculationMode>FasterTime</trp:CalculationMode>
+          <trp:ElevationMode>Standard</trp:ElevationMode>
+        </trp:ViaPoint>
+        <gpxx:RoutePointExtension>
+          <gpxx:Subclass>000000000000FFFFFFFFFFFFFFFFFFFFFFFF</gpxx:Subclass>
+        </gpxx:RoutePointExtension>
+      </extensions>
+    </rtept>
+    <rtept lat="40.003967285" lon="-105.498962402">
+      <time>2013-03-09T20:45:02Z</time>
+      <name>Hwy 72</name>
+      <sym>Flag, Blue</sym>
+      <extensions>
+        <trp:ViaPoint>
+          <trp:CalculationMode>FasterTime</trp:CalculationMode>
+          <trp:ElevationMode>Standard</trp:ElevationMode>
+        </trp:ViaPoint>
+        <gpxx:RoutePointExtension>
+          <gpxx:Subclass>000000000000FFFFFFFFFFFFFFFFFFFFFFFF</gpxx:Subclass>
+        </gpxx:RoutePointExtension>
+      </extensions>
+    </rtept>
+</rte>
+  <trk>
+    <name>Hwy 119 to Hwy 72</name>
+    <extensions>
+      <gpxx:TrackExtension>
+        <gpxx:DisplayColor>DarkGray</gpxx:DisplayColor>
+      </gpxx:TrackExtension>
+    </extensions>
+    <trkseg>
+      <trkpt lat="39.973869715" lon="-105.465850364">
+</trkpt>
+      <trkpt lat="40.003967285" lon="-105.498962402">
+</trkpt>
+    </trkseg>
+</trk>
+</gpx>
index 3d06efae279dad3b773fbb4f3b5afb745fda649e..60b35c7ab0ff8dd177b6b3300208a6d3e7f528ca 100644 (file)
@@ -13,3 +13,7 @@ rm -f ${TMPDIR}/tpx-sample.gpx
 gpsbabel -i gpx -f ${REFERENCE}/track/gpx_garmin_extensions.gpx -o gpx,garminextensions -F ${TMPDIR}/tpx-sample.gpx
 compare ${REFERENCE}/track/gpx_garmin_extensions.gpx ${TMPDIR}/tpx-sample.gpx 
 
+rm -f ${TMPDIR}/basecampe~gpx.gpx
+gpsbabel -i gpx -f ${REFERENCE}/basecamp.gpx -o gpx -F ${TMPDIR}/basecamp~gpx.gpx
+compare ${REFERENCE}/basecamp~gpx.gpx ${TMPDIR}/basecamp~gpx.gpx 
+